import request from '@/utils/request'
import { parseStrEmpty } from '@/utils/ruoyi'
import { encrypt } from '@/utils/jsencrypt'

// 查询用户列表
export function listUser(query) {
  return request({
    url: '/system/user/list',
    method: 'get',
    params: query
  })
}

// 查询用户详细
export function getUser(userId) {
  return request({
    url: '/system/user/' + parseStrEmpty(userId),
    method: 'get'
  })
}

// 新增用户
export function addUser(data) {
  data.password = encrypt(data.password)
  return request({
    url: '/system/user',
    method: 'post',
    data: data
  })
}
// 订单权限分配
export function orderAuthorityType(data) {
  return request({
    url: '/system/user/update/OrderAuthorityType',
    method: 'post',
    data: data
  })
}

//更新列表配置
export function setTableConfig(data) {
  return request({
    url: '/system/user/updateListDisaplay',
    method: 'post',
    data: data
  })
}

// 修改用户
export function updateUser(data) {
  return request({
    url: '/system/user',
    method: 'put',
    data: data
  })
}

// 删除用户
export function delUser(userId) {
  return request({
    url: '/system/user/' + userId,
    method: 'delete'
  })
}

// 用户密码重置
export function resetUserPwd(userId, password) {
  const data = {
    userId,
    password: encrypt(password)
  }
  return request({
    url: '/system/user/resetPwd',
    method: 'put',
    data: data
  })
}

// 用户状态修改
export function changeUserStatus(userId, status) {
  const data = {
    userId,
    status
  }
  return request({
    url: '/system/user/changeStatus',
    method: 'put',
    data: data
  })
}

// 查询用户个人信息
export function getUserProfile() {
  return request({
    url: '/system/user/profile',
    method: 'get'
  })
}

// 修改用户个人信息
export function updateUserProfile(data) {
  return request({
    url: '/system/user/profile',
    method: 'put',
    data: data
  })
}

// 用户密码重置
export function updateUserPwd(oldPassword, newPassword) {
  const data = {
    oldPassword: encrypt(oldPassword),
    newPassword: encrypt(newPassword)
  }
  return request({
    url: '/system/user/profile/updatePwd',
    method: 'put',
    params: data
  })
}

// 用户头像上传
export function uploadAvatar(data) {
  return request({
    url: '/system/user/profile/avatar',
    method: 'post',
    data: data
  })
}

// 查询授权角色
export function getAuthRole(userId) {
  return request({
    url: '/system/user/authRole/' + userId,
    method: 'get'
  })
}

// 保存授权角色
export function updateAuthRole(data) {
  return request({
    url: '/system/user/authRole',
    method: 'put',
    params: data
  })
}

// 查询部门下拉树结构
export function deptTreeSelect() {
  return request({
    url: '/system/user/deptTree',
    method: 'get'
  })
}

//查询用户身份列表
export function getUserIdentityList(username) {
  return request({
    url: `/system/user/relevance/${username}`,
    method: 'get'
  })
}

//查询用户身份列表
export function getUserIdentityListByOrder(username) {
  return request({
    url: `/system/user/relevanceOrder/${username}`,
    method: 'get'
  })
}
//根据userName（工号）查询用户信息
export function getUserInfoByUserName(username) {
  return request({
    url: `/system/company/getInfo/${username}`,
    method: 'get'
  })
}

// 设置首页组件

export function setHomesetting(data) {
  return request({
    url: '/system/user/updateHomesetting',
    method: 'post',
    data
  })
}

export function annualTarget() {
  return request({
    url: '/ord/statistics/annual/target',
    method: 'get'
  })
}
